<blockquote>
    <p>模板视图 @ViewConfiguration注解</p>
    <footer>
        <p><code>ViewType viewType()</code>：视图类型支持BEETL,FREEMARKER,VELOCITY;</p>
        <p><code>String loadPath()</code>：视图模板加载路径;</p>
        <p><code>String suffix()</code>：视图模板文件后缀名;</p>
        <p><code>int updateDelay()</code>：视图更新时间, 默认6000 （单位秒）;</p>
        <p><code>String encoding()</code>：模板编码格式;</p>
        <p><code>LoadType loadType()</code>：加载类型, 可以指定Resource相对目录或者磁盘绝对路径目录;</p>
    </footer>
</blockquote>
<blockquote>
    <p>示例 Freemarker模板</p>
</blockquote>
<pre class="code brush:java">
package cn.jants.demos;


import cn.jants.common.annotation.action.Controller;
import cn.jants.common.annotation.action.GET;
import cn.jants.common.annotation.boot.ViewConfiguration;
import cn.jants.common.annotation.service.Application;
import cn.jants.common.enums.ViewType;
import cn.jants.core.startup.JTomcat;

/**
 * 以下已Freemarker模板视图为例
 *
 * @author MrShun
 * @version 1.0
 * @Date 2017/12/20
 */
@Application
@ViewConfiguration(viewType= ViewType.FREEMARKER //模板类型
        , loadPath = "/ftl" //模板文件相对于resources存放目录
        , suffix = ".ftl" //模板文件后缀名
)
@Controller
public class DemosApplication {

    /**
     * 当返回值为String时, 是返回视图内容
     * @return
     */
    @GET("/view")
    public String view() {
        return "test";
    }

    /**
     * 当返回值为Object时, 是Response Data数据
     * @return
     */
    @GET("/str")
    public Object str() {
        return "test";
    }

    public static void main(String[] args) {
        JTomcat.run(DemosApplication.class, 80);
    }
}
</pre>
<script type="text/javascript">
    $(function () {
        SyntaxHighlighter.highlight();
        $(".toolbar").remove();
    });
</script>